The present invention relates generally to cryptography, and in particular to a method and apparatus for authenticating the access dialog between two devices in an electronic locking system. The authentication process uses a randomly generated clocking key that is itself encrypted, which renders the locking system highly attack resistant.
User authentication is a major concern in anti-theft systems. Any anti-theft system, particularly wireless radio frequency and infrared transmission systems, is subject to playback attack, where a would-be intruder simply records the authentication transmission and plays it back later to gain access. Cryptographic authentication systems provide some degree of security from this type of attack, although at some additional cost. Ideally, the goal of a cryptographic authentication system is to strengthen the security while keeping implementation costs low. This usually involves a trade off between high security and low cost.
As a first step in immunizing a system against playback attack some systems exchange codes during an access dialog in which each device verifies the authenticity of the other. Typically this is done by exchanging a secret code such as a clocking key known to both devices. In response to the secret code, the devices may exchange further authentication information with each other. Often, the codes exchanged are purposefully changed from one access dialog to the next, so that a would-be thief cannot simply record one cycle and play back that dialog to gain access in future cycles.
One problem with such conventional clocking key techniques is that the clocking key can be cryptographically analyzed to determine the nature of the cryptographic process employed by the two devices. In other words, knowing the clocking key, a savvy intruder can program a computer to perform a sequence of experiments, using the intercepted clocking key. This will eventually reveal the nature of the encryption process used by the two devices. Once the encryption process is known, the would-be thief can simply duplicate the process and thereby unlock the electronic lock.
The present invention addresses this problem by providing a system that relies on a randomly generated clocking key that is, itself, encrypted. Being randomly generated, the clocking key changes randomly with every access dialog. Hence attack by cryptographic analysis is rendered significantly more difficult. If a would-be thief records the clocking key during one dialog, that clocking key will be of no value in performing cyclic or iterative experiments designed to discover the nature of the embedded encryption process. This is so because the next access dialog relies on a new randomly generated number that the would-be thief has no prior knowledge of. To add further security, the randomly generated clocking key may itself be encrypted prior to transmission.
By way of summary, the invention provides an attack-resistant process for authenticating an access dialog between a first device and a second device in an electronic locking system. At the first device a random first clocking key is generated and that clocking key is encrypted to produce an encrypted clocking key. The encrypted clocking key is then communicated to the second device. At the first device the first clocking key is also used to perform a composition process that generates a first response code.
At the second device the encrypted clocking key communicated by the first device is decrypted to recover a second clocking key. The second clocking key is used to perform a composition process that generates a second response code. Thereafter at least one of the first and second devices, the first and second response codes are compared, resulting in authentication of the access dialog if the first and second response codes match.
For a more complete understanding of the invention, its objects and advantages, refer to the following specification and to the accompanying drawings.